home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / printer / jcosub26.zip / FONTSPEC.DOC < prev    next >
Text File  |  1996-03-12  |  9KB  |  185 lines

  1. JACOsub FONT SPECIFICATIONS
  2. ===========================
  3.  
  4. Note:  You do not need to read this unless you plan to design your own
  5. fonts for use with JACOsub.  If you don't have such plans, then this
  6. document will only confuse you.
  7.  
  8. JACOsub will work with all fonts supported by the Amiga operating system.
  9. To get the most effective use out of JACOsub, some consideration must be
  10. given to fonts and how they are used by the program.  This document covers
  11. the following topics:
  12.  
  13. 1.  Font types
  14.     a.  Mono-color fonts
  15.     b.  Color bitmap fonts
  16.     c.  Fixed width versus proportional fonts
  17. 2.  Standard character set
  18. 3.  Reserved character codes
  19. 4.  Controlling boldface thickness
  20. 5.  Converting from other font formats
  21.  
  22.  
  23. 1.  FONT TYPES
  24. --------------
  25.  
  26. a.  Mono-color fonts
  27. --------------------
  28.  
  29. JACOsub can read all Amiga mono-color bitmap fonts and, under AmigaDOS 2.0
  30. and above, CompuGraphic scalable outline fonts (once loaded in memory, all
  31. fonts are treated as bitmap fonts).  These fonts are all mono-color.  If
  32. you wish JACOsub to display them with an outline and/or dropshadow, you
  33. must use the FO and/or the FS directives in your script, respectively.
  34.  
  35. Alternately, you can load these fonts into a font editor such as
  36. Calligrapher and build your own outline and shadow around the font images,
  37. thereby converting the font to a multi-color font.
  38.  
  39. b.  Color bitmap fonts
  40. ----------------------
  41.  
  42. AmigaDOS 2.0 and higher has direct support for multi-color (actually this
  43. means "multi-bitplane") fonts.  AmigaDOS 1.3 requires a colortext driver
  44. to be loaded prior to using color fonts.  JACOsub will load any color
  45. bitmap font.  However, for JACOsub to have proper control over the font
  46. colors, it expects one important thing about bitmap assignments:  The
  47. pixels making up the font face (the part of the character image having an
  48. adjustable color) must occupy ONLY bitmap 0.
  49.  
  50. This is equivalent to saying, if you stripped the font down to one bitmap,
  51. turning it into a mono-color font, none of the font-face image information
  52. should be lost, although other imagery (like dropshadows) would be lost.
  53. And indeed, if you try to use any JACOsub font under AmigaDOS 1.3 without
  54. first loading a colortext driver, the fonts appear like normal mono-color
  55. fonts, with no outlines or shadows.
  56.  
  57. It is important to remember that a font's own internal color definitions
  58. have nothing to do with the colors on the screen in which they are
  59. displayed.  The display's color palette controls the appearance of the font
  60. colors.
  61.  
  62. For JACOsub compatibility, the font's internal color assignments should be
  63. as follows when designing a font:
  64.  
  65.    Color   Bitplanes used    Assignment
  66.    -------------------------------------------------------------
  67.      0       none            Background (transparent to genlock)
  68.      1         0             Font face imagery
  69.      2         1             Font outline/shadow imagery
  70.  
  71. All JACOsub color fonts are 2-bitplane (4-color) fonts.  As you can see
  72. colors 0, 1, and 2 are reserved for specific uses.  Color 3 is available in
  73. a 2-bitplane font, but it is not used in the JACOsub font definitions.
  74. Color 3 may be used; however, it will appear as a fixed color changeable
  75. only through modifying JACOsub's color palette.
  76.  
  77. It is unlikely that your video titling application will require more colors
  78. internal to a font than 4.  If you need more, just remember to design your
  79. font with colors 0, 1, and 2 reserved with the assignments above, and you
  80. can do whatever you like with the other colors.
  81.  
  82. c.  Fixed-width versus proportional fonts
  83. -----------------------------------------
  84.  
  85. JACOsub treats fixed-width fonts slightly differently than proportionally-
  86. spaced fonts in calculating screen area used by titles.  The program also
  87. will allow only fixed-width fonts (like JACOsub 18) to be used as a timing
  88. font for display on the running clock or on the timing screen, and it will
  89. perform flush-justification only on proportional fonts.
  90.  
  91. Do not try to load a fixed-width font into Calligrapher!  You'll be sorry
  92. you did.  Calligrapher fouls up the spacing and width of fixed-width fonts.
  93. It is an excellent font editor for proportional fonts, however.
  94.  
  95. 2.  STANDARD CHARACTER SET
  96. --------------------------
  97.  
  98. The Amiga uses the ECMA-94 Latin 1 international 8-bit character set, also
  99. known as the ISO 8859-1 character set.  Most operating systems except MSDOS
  100. support this standard.  The JACOsub software does not care how each
  101. character code looks on the screen; however, the proportionally-spaced
  102. JACOsub fonts were designed for the most part to conform to the
  103. international standard (the fixed-width JACOsub 18 font is a pure ASCII
  104. font with no funny foreign high-bit characters).
  105.  
  106. For typographical convenience, the character set contains some useful
  107. characters not normally available from the keyboard.  Character code 173
  108. (0xAD), for example, referred to as SHY, appears as an em-dash.  This is a
  109. long dash useful for pauses in speech; much better than using a hyphen.
  110. Quotation marks are another example.  Using pairs of left and right single
  111. quotes (`` '') comes out looking more like typeset quotes in the JACOsub
  112. character set; much better than normal double-quote characters (" ").  And,
  113. of course, for Japanese Animation, we can't do without the Yen (Ñ) symbol,
  114. code 165 (0xA5).
  115.  
  116. JACOsub's "Hex Entry" menu selection, which allows you to access characters
  117. not normally available from the keyboard, will display the international
  118. character set, and not the caracter images which happen to be in your font
  119. of interest.  This menu display will match the JACOsub characters, however.
  120.  
  121. The large JACOsub (36 pixel height) font is missing some character images
  122. to save space.  These images are unlikely to be used.  The character codes
  123. for the missing characters are (in hex) A0, A2, A4, A6-A8, AA, AC, AE, AF,
  124. B0-BA, BC-BE, D7, and F7.
  125.  
  126. If you distribute a script using high-bit characters, you should make sure
  127. to use a font like the JACOsub fonts, which conform to the international
  128. standard, so that other people can make use of your script.
  129.  
  130. 3.  RESERVED CHARACTER CODES
  131. ----------------------------
  132.  
  133. JACOsub reserves a few character codes for special uses.  One use is the
  134. "hard space" designated in your scripts with a tilde (~) and treated
  135. internally during script compilation as a control-A (0x01).  This is
  136. temporary, and reverts to a normal space after wordwrapping, but the
  137. presence of a control-A in your script will be treated as a hard space.
  138. You should not beusing ANY control characters in your script anyway.
  139.  
  140. Another special-use character is for flush-justifying both margins of a
  141. text block.  For this, JACOsub must commandeer one character out of the
  142. character set to use as an adjustable space when calculating text widths
  143. and displaying titles.  The character code for this adjustable space will
  144. be 128 (0x80), 31 (0x1f) or 127 (0x7f), searched in that order, depending
  145. on what is available in the font.  Except for 127 (the DEL character),
  146. these character codes are normally non-displayable, and therefore they are
  147. safe to substitute with a displayable space.  One of these character codes
  148. must exist in your font for flush-justification to work.  Flush
  149. justification is not supported for fixed-width fonts; you can do that
  150. yourself by adjusting the number of spaces between words.
  151.  
  152. 4.  CONTROLLING BOLDFACE THICKNESS
  153. ----------------------------------
  154.  
  155. If a font is not already designed as a boldface font, the Amiga OS can
  156. generate this style algorithmically, resulting in a horizontal thickening
  157. of the characters.  The extent of this thickening is controlled by a
  158. parameter called BoldSmear in the font data structure.
  159.  
  160. Normally, all JACOsub fonts have a BoldSmear value of 1, meaning that
  161. boldface text will be generated by thickening normal text horizontally by 1
  162. pixel.  This value is fine for small screen fonts which you usually use
  163. with computer appications, but for large video title fonts like thickening
  164. by just 1 pixel will result in a font that is not noticeably "bold."  As of
  165. version 2.5, all proportionally-spaced JACOsub fonts have a BoldSmear value
  166. of 2.  The SuperHires fonts have a BoldSmear value of 3.
  167.  
  168. If you design your own font, most font editors do not provide a way to
  169. change BoldSmear.  You can do that yourself easily, however, with a binary
  170. editor like NewZap.  Simply load up the font data file (the file that
  171. begins with a number, like "18" or "36.4C").  The byte at hexadecimal
  172. offset $0077 is the BoldSmear value; it usually contains the value $01.
  173. Change it to 2.  Any more than 2 will probably be too much.
  174.  
  175. 5.  CONVERTING FROM OTHER FONT FORMATS
  176. --------------------------------------
  177.  
  178. I can't help you here.  I know that utilities exist to convert, for
  179. example, TrueType fonts to Amiga-compatible format.  There's another
  180. utility called ATE which allows the Amiga operating system to support
  181. PostScript fonts directly.  Anybody who wants to fill in this documentation
  182. section is welcome to do so.
  183.  
  184. Send revisions to matuli_a@marlin.navsea.navy.mil.
  185.